جزوه · ویرایشگرهای متنی در لینوکس ← بازگشت به فهرست
📘 فصل اول · قسمت نهم ویرایشگرهای متنی
📅 تاریخ: ۱۸ مرداد ۱۴۰۵ 👤 مدرس: محمد عابدینی 🐚 Zsh · 🐧 Debian

▍ اصل مهم

«همه چیز در لینوکس یک فایل است»

برای پیکربندی سرویس‌ها و تنظیمات سیستم، باید فایل‌های متنی را ویرایش کنید. بنابراین تسلط بر ویرایشگرهای متنی یکی از مهارت‌های ضروری در لینوکس است.

▍ جستجو و جایگزینی

جستجو در فایل‌ها و جایگزین کردن متن، یکی از مهم‌ترین مهارت‌هایی است که در کار با ویرایشگرها به آن نیاز دارید. هر ویرایشگر روش مخصوص خود را دارد.

▍ ویرایشگر vi

vi یک ویرایشگر قدیمی و بسیار قدرتمند است که در همه توزیع‌های لینوکس به صورت پیش‌فرض وجود دارد. نسخه جدیدتر آن vim (Vi IMproved) نام دارد.

⚠️ نکته کلیدی:

در vi و vim، کاراکتر ^ یعنی کلید Ctrl و M یعنی کلید Alt.

• حالت‌های vi/vim

حالت توضیح
Command Mode حالت پیش‌فرض برای اجرای دستورات
Insert Mode حالت ویرایش متن (با i وارد می‌شوید)
Visual Mode حالت انتخاب متن (با v وارد می‌شوید)
Command-Line Mode برای دستورات پیشرفته مانند جستجو (با : وارد می‌شوید)

• دستورات پرکاربرد vi/vim

دستور توضیح
i ورود به حالت Insert (ویرایش)
Esc خروج از حالت Insert و بازگشت به Command Mode
: + w ذخیره فایل (write)
: + q خروج (quit)
: + wq ذخیره و خروج
: + q! خروج بدون ذخیره
/ + متن جستجوی متن به جلو
? + متن جستجوی متن به عقب
: + %s/old/new/g جایگزینی تمام old با new در کل فایل
dd حذف یک خط کامل
yy کپی کردن یک خط (yank)
p چسباندن (paste) خط کپی شده
💡 نکته برای امتحان:

جستجو و جایگزینی در vi/vim با :%s/متن_قبلی/متن_جدید/g انجام می‌شود. % یعنی کل فایل، g یعنی همه موارد.

▍ ویرایشگر nano

nano یک ویرایشگر ساده و کاربرپسند است که برای کاربران مبتدی بسیار مناسب است. برخلاف vi، تمام کلیدهای میانبر در پایین صفحه نمایش داده می‌شوند.

📝 نحوه استفاده:
┌──(user㉿kali)-[~] └─$ nano filename.txt

• کلیدهای میانبر nano

کلید توضیح
Ctrl + O ذخیره فایل (Output)
Ctrl + X خروج از nano
Ctrl + W جستجو (با Alt + W جستجوی بعدی)
Ctrl + \ جایگزینی (جستجو و جایگزین)
Ctrl + G نمایش راهنما
Ctrl + C نمایش موقعیت مکان‌نما (شماره خط)
Ctrl + K حذف یک خط کامل (Cut)
Ctrl + U چسباندن خط حذف شده (Uncut)
Alt + U بازگشت به قبل (Undo)
Alt + E بازگشت به بعد (Redo)
📌 برای امتحان یادت باشد:
  • vi/vim: :%s/old/new/g برای جایگزینی
  • nano: Ctrl + \ برای جستجو و جایگزینی
  • vi/vim: دو حالت اصلی: Command و Insert
  • nano: همه کلیدهای میانبر در پایین صفحه نشان داده می‌شود
  • ^ یعنی Ctrl و M یعنی Alt

▍ جمع‌بندی سریع